AWS Custom Engine Versions for Amazon RDS Custom for Oracle – Sightseeing Tour Part 3/3 – Pricing and personal Thoughts

This is the third and last part of the blog post series about AWS Custom Engine Versions for Amazon RDS Custom for Oracle. The blog post series:

After testing and running AWS RDS Custom for Oracle for a while, it’s time to came to a summary and finish the blog post series. First, let’s do a small comparison with the shapes what we used against Oracle Cloud Infrastructure. In the OCI DBCS service, we have full access to the database server too and have a lot of possibilities to customize the environment. It’s not so easy to find the right shapes to not compare apples with pears. But in fact, in OCI you get more CPU power per BYOL CPU license than in other clouds. The AWS RDS Custom service is a BYOL service. And this is reflected 1:1 in the pricing. More information about vCPU versus OCI, take a look here: https://blogs.oracle.com/cloud-infrastructure/post/vcpu-and-ocpu-pricing-information.

Setup

  • Calculated for 744hrs per month runtime
  • 256 GiB is the OCI minimum amount for DBCS RDBMS storage
  • No traffic included
AWS Oracle Cloud Infrastructure
Instance Class db.r5.xlarge VM Standard 2.2
Processor 4 vCPU 2 OCPU
Memory 32 GiB 30 GiB
Storage for RDBMS 256 GiB 256 GiB
Storage for Backup 300 GiB 300 GiB

Price Comparison

AWS Oracle Cloud Infrastructure
Instance 494.21 USD 287.93 USD
Storage for RDBMS 35.072 USD 15.23 USD
Storage for Backup 30.90 USD 12.75 USD
Total 560.18 USD 315.91 USD

 

Technical Summary

To provide another RDS service with full OS access beside the regular offering for Oracle in AWS is basically a good idea. The instance creation process based on a own defined patch set is an easy task for an Oracle DBA – if all requirements are fulfilled like the VPC and endpoint creation. And for the tricky things, Cloud Formation templates are offered. But this offering lacks of important things:

  • No choice of the characterset at service rampup, US7ASCII is provided and has to be changed by SQL afterwards (ALTER DATABASE CHARACTER SET INTERNAL_CONVERT AL32UTF8;)
  • No multitenancy, still for 19c you get a single instance
  • Restricted shape availability
  • No mirroring of redo log or control files
  • Non-RMAN backups, only disk snapshots
  • No DB instance class change
  • Only a default database parameter group

This are things I like:

  • Key and SSH password management in AWS Secret Manager which allows us to spread the credentials
  • Automated build of a Data Guard standby side in another Availability Zone
  • Cloud Watch and other AWS services integration
  • Usage of the KMS Key Management Service for disk encryption
  • TDE Support
  • The option to pause the custom creation process to modify the instance

Some Personal Thoughts

This AWS service looks for me as a service which was created as reaction to other vendors to provide Oracle database services with OS access, but the process has stopped before it was at the end. Missing important features makes this service worse. Why not to provide multitenancy functionality and a regular RMAN backup? Even when the underlying EBS storage is mirrored in other AZ, why not adding a second group of redo log files? For such a high price, we can expect more – or we build it automated by Ansible / Terraform on an EC2 instance for less money. Maybe there are some improvements ongoing in the next weeks, but for now, the AWS RDS Custom for Oracle service is not really a recommendation. I will keep an eye on it.

Opinions expressed are solely my own and do not express the views or opinions of my employer.

This was the last blog post about this service. It was a pleasure to take a deep look inside this unknown service. And even when I miss important things at the moment, there are a lot of other possibilities to run Oracle workloads in AWS, in RDS or EC2. It’s your decision.